home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / STUTTGART / LANG / SML40 / !Sml / Sml / ORIGREADME < prev    next >
Text File  |  1990-09-17  |  7KB  |  170 lines

  1. VERSION 4.0.01 of Edinburgh Standard ML (core language)
  2. =======================================================
  3.  
  4. This tape contains a version of the Standard ML core language for UNIX
  5. 4.xBSD as it appears in the The Definition of Standard ML Version 3
  6. (May 1989 - LFCS report ECS-LFCS-89-81)
  7.  
  8. ==================================================================
  9. Please complete the licence agreement at the end of this file and
  10. return to LFCS.
  11. ==================================================================
  12.  
  13. Before using the system, you will need to perform the following steps:
  14.  
  15.  1) Create the abstract machine with the filename fam by renaming a file of 
  16.     the form fam.machine, if you are running on a Vax (ultrix), Sun (3 or 4),
  17.     or Pyramid.
  18.     For any other machine, you will need to run the command 'make fam' in the 
  19.     fam.src directory to create a fam file. 
  20.  2) Edit "config.sml" if you want the ML system to read from a standard
  21.     startup file when it begins. In the release, this is "/usr/lib/.smlrc"
  22.     (duplicated in the release as ".smlrc"), which tries to open "~user/.smlrc"
  23.     if this exists.
  24.  3) Run the command 'ml smlcore.exp.backup < config.sml' which should
  25.     produce a file called smlcore.exp.  This file should then be installed
  26.     in a publicly accessible directory.
  27.  4) Alter the paths in the file ml to point to the directories containing
  28.     the fam and smlcore.exp files.  Install this file in a publicly
  29.     accessible executables directory.
  30.  5) The system may then be invoked by executing the file ml.
  31.  
  32.  
  33. Source files of the abstract machine are in the directory fam.src.
  34. Rebuilding the fam, or porting to another machine, may be trivial or may be
  35. quite hard work, depending on how brain-damaged your hardware/OS/C compiler
  36. is. The changes should be localised to system.c and system.h via a number
  37. of #define statements - see what's already there. There's a revision history
  38. at the top of the main source file, fam.c.
  39.  
  40. DIFFERENCES FROM PREVIOUS VERSIONS 
  41. ----------------------------------
  42. (3.7)
  43.  - Numerically labelled records have been implemented
  44.  - singly labelled record pattern bug has been fixed
  45.  - exceptions Match, Bind, Abs and Neg are implemented as in the 
  46.    language definition version 4
  47. (4.0)
  48.  - Exception traceback mechanism introduced
  49.  - GNU bash Readline library incorporated for interactive line editing
  50. ----------------------------------
  51.  
  52. This version of Standard ML has a number of known deficiencies including...
  53.  
  54.  - The exhaustiveness checking does not always report warnings when it
  55.    should.  Furthermore, the algorithm used to check the patterns is
  56.    exponential, although in many cases this is not a problem.  
  57.    The exhaustiveness checking is controlled by the CheckMatch flag
  58.    in the Debug variable see the man pg for details.
  59.  
  60.  -    Parse errors are not always very helpful!
  61.  
  62. There are a few non-standard features that are available, 
  63. including
  64.  
  65.    ExportML : string * string * string list -> unit
  66.       This takes a file name, a banner message, and a list of files
  67.       to load on start-up, and saves away the current state of the system
  68.       in the file with the given file name.  Assuming that a saved state
  69.       was placed in file fred.exp, then it may be restarted by
  70.       executing "ml fred.exp".
  71.       Any streams that were open when the export occurred will fail
  72.       with the error "stream link lost" if used when the state
  73.       is reimported.  'New' versions of std_in and std_out may be
  74.       obtained by calling the function stdio: unit -> (instream * outstream).
  75.  
  76.    Print and Debug are variables that affect the underlying compiler.
  77.    They are records, and the field names should indicate what most
  78.    of the fields do.  See the man pg for details
  79.  
  80.  
  81.    The SML core language environment contains various library functions
  82.    which are described in the file LIBINFO.
  83.  
  84.    In addition to the built-in library functions, there are also
  85.    library packages for array and byte_array manipulations.  These
  86.    packages can be loaded directly from the files core_array.sml
  87.    and core_barray.sml respectively.
  88.  
  89.    
  90. Please report any comments/faults to
  91.  
  92. Russ Green,      Department of Computer Science,
  93.                  University of Edinburgh.
  94.          EMAIL: rjg@uk.ac.ed.lfcs
  95.  
  96.  
  97. ========================================================================
  98.  
  99. Laboratory for Foundations of Computer Science
  100. ----------------------------------------------
  101. Department of Computer Science - University of Edinburgh
  102.  
  103. Standard ML Licence Agreement
  104. -----------------------------
  105. Return one copy of this document to LFCS Software Distribution at the
  106. address below and keep one copy for your records.
  107.  
  108. LFCS,                                              031-667-1081 ext. 2987 
  109. Department of Computer Science,                  Telex: 727442 (UNIVED G) 
  110. University of Edinburgh,                          E-Mail:ml@uk.ac.ed.lfcs
  111. King's Buildings, 
  112. Edinburgh, EH9 3JZ 
  113. UK
  114.  
  115. I, the licensee, agree to the conditions below in respect of the Standard ML
  116. System supplied by the Laboratory for Foundations of Computer Science of the
  117. University of Edinburgh.
  118.  
  119.  
  120. Signed:     ____________________________   Date:________________________
  121.  
  122. Name(printed):    ____________________________________________________________
  123.  
  124. Title:            ____________________________________________________________
  125.  
  126. Organisation:    ____________________________________________________________
  127.  
  128. Address:    ____________________________________________________________
  129.  
  130.                 ____________________________________________________________
  131.  
  132. Telephone:    __________________ Electronic Mail: ________________________
  133.  
  134. Conditions of Licence:
  135.  
  136. 1. Title to and copyright of the Standard ML System remains with the Laboratory
  137. for Foundations of Computer Science at the University of Edinburgh.
  138.                                                                                
  139. 2. The ML System may be used freely within the licensee's organisation for
  140. research and educational purposes. Commercial and revenue earning use are
  141. excluded form this agreement. Evaluation for potential commercial use is
  142. permitted, but licencees are advised to contact LFCS in advance of this
  143. activity.
  144.  
  145. 3. The licensee will not pass the ML System to anyone outside their
  146. organisation unless they are already signatories to this licence in which case
  147. the system may be copied to them under the same terms as this licence. No
  148. charge may be levied for this distribution.
  149.  
  150. 4. The licensee accepts the ML system "as is". The University of Edinburgh
  151. makes no warranty in respect of the ML System. Nevertheless licensees are
  152. encouraged to report to LFCS any problems with or suggestions for improvement
  153. of the the ML System.
  154.  
  155. 5. The licensee may modify the supplied ML System on condition that any
  156. significant changes are notified to LFCS and made available to LFCS such that
  157. they may be incorporated within future releases of the ML System and licenced
  158. under the conditions of this licence agreement.  "Significant changes" will
  159. include, for example, changes to the language accepted by the system or ports
  160. to previously unsupported host computer types. Licencees are strongly advised
  161. to consult LFCS before starting such work in order to avoid duplication and to
  162. assess the feasibility of the work.
  163.  
  164. 6. Licencees will acknowledge LFCS and The University of Edinburgh as the
  165. designers of the ML language and implementors of this implementation in any
  166. relevant document or publication.
  167.  
  168.  
  169.  
  170.